离上一篇已经一个星期了,人的拖延症是没法救的,今晚趁着蒙蒙春雨,来抒发抒发情感。
上一篇简单介绍了webpack的配置,这里稍微再做一一下延伸

插件

插件可以完成更多 loader 不能完成的功能。插件的使用一般是在 webpack 的配置信息 plugins 选项中指定。
Webpack 本身内置了一些常用的插件,还可以通过 npm 安装第三方插件。接下来,我们利用一个最简单的 BannerPlugin 内置插件来实践插件的配置和运行,这个插件的作用是给输出的文件头部添加注释信息。

修改 webpack.config.js,添加 plugins:

var webpack = require('webpack');
module.exports = {
  entry: './entry.js',
  output: {
    path: __dirname,
    filename: 'bundle.js'
  },
  module: {
    loaders: [
      {test: /\.css$/, loader: 'style-loader!css-loader'}
    ]
  },
  plugins:[
    new webpack.BannerPlugin('it is BannerPlugin')
  ]
}

然后运行 webpack,打开 bundle.js,可以看到文件头部出现了我们指定的注释信息:

/*! it is BannerPlugin */
/******/ (function(modules) { // webpackBootstrap
/******/     // The module cache
/******/     var installedModules = {};

/******/     // The require function

开发环境

如果每一次文件的改变,都需要去运行一次webpack,那是一件很麻烦的事,例如我用的是sublime写代码,要是想运行一段代码,首先要用webpack打包,然后再浏览器上还要刷新,简直不能忍么。这里有两种解决方案

watch

看名字就知道是监听的意思,我们来测试一下(ps:这里我们加个有意思的东西,--progress --colors,想知道干嘛用?运行一下你就知道了)

$ webpack --progress --colors --watch

// --progress 在编译的时候多了个进度显示
//--colors 一些代码的高亮
//--watch 虽然不用每次都运行webpack了,但是改完一次还需要刷新浏览器,才会发生变化

webpack-dev-server

所以使用 webpack-dev-server 开发服务是一个更好的选择。它将在 localhost:8080 启动一个 express 静态资源 web 服务器,并且会以监听模式自动运行 webpack,在浏览器打开 http://localhost:8080/http://localhost:8080/webpack... 可以浏览项目中的页面和编译后的资源输出,并且通过一个 socket.io 服务实时监听它们的变化并自动刷新页面。

# 安装
$ cnpm install webpack-dev-server -g

# 运行
$ webpack-dev-server --progress --colors

大概的webpack就介绍到这吧,有了基础的理解后,你可以根据自己的需求,去官网进行相应的了解,也可以参考别人项目学一点经验,好了,这篇文章就结束了,因为下一篇就要结合vueComponent了,在完成component的结合后,我相信你对webpack会有一个更好的认识。

webpack -> vue Component 从入门到放弃(四
webpack -> vue Component 从入门到放弃(二)
webpack -> vue Component 从入门到放弃(一)
github源代码


翻滚的猿
118 声望15 粉丝

除了写bug